package cz.pecinovsky.česky.oopnz.správce;
/*******************************************************************************
 *<pre>
 * Předchozí:   {@code IPosuvný} z balíčku {@code tvary}
 * Následující: Prozatím není
 *
 * Projekt  114, >=119
 *   ¤ Žádné viditelné změny. Základní změnou je změna projektu -
 *     přechází se od plátna ke správci plánta. Z toho také vyplývá změna
 *     kořenového rodiče v hierarchii dědičnosti - její kořen {@code IKreslený}
 *     přestal být značkovacím rozhraním a vyžaduje implmentaci metody.
 *
 * Projekt  125c - Přepravka
 *   ~ Změna deklarovaných metod v důsledku zavedení přepravek
 *
 * Projekt  133z - Balíčky
 *   + Přidány importy tříd a rozhraní přestěhovaných do jiných balíčků
 *
 * Projekt  Ppp
 *   + Přidáno
 *   - Odebráno
 *   ~ Změněno
 *</pre>
 */

////////////////////////////////////////////////////////////////////////////////
//%%+  +++++ Konec ignorovaného počátečního textu +++++

//%A+ >=133x
import cz.pecinovsky.česky.oopnz.utility.Pozice;

//%A-

/*******************************************************************************
 * Instance rozhraní {@code IPosuvný} představují geometrické tvary,
 * které umějí prozradit a nastavit svoji pozici.
 *
 * @author Rudolf PECINOVSKÝ
 * @version 6.03.2017 — 2010-11-08
 */
public interface IPosuvný extends IKreslený
{
//== VEŘEJNÉ KONSTANTY =========================================================
//== DEKLAROVANÉ METODY ========================================================
//%X+ >125

    /***************************************************************************
     * Vrátí x-ovou (vodorovnou) souřadnici pozice instance.
     *
     * @return  Aktuální vodorovná (x-ová) souřadnice instance,
     *          x=0 má levý okraj plátna, souřadnice roste doprava
     */
//     @Override
    public int getX();


    /***************************************************************************
     * Vrátí y-ovou (svislou) souřadnici pozice instance.
     *
     * @return  Aktuální svislá (y-ová) souřadnice instance,
     *          y=0 má horní okraj plátna, souřadnice roste dolů
     */
//     @Override
    public int getY();

//%X-
//%A+ >125

    /***************************************************************************
     * Vrátí instanci třídy {@code Pozice} s aktuální pozicí instance.
     *
     * @return  Instance třídy {@code Pozice} s aktuální pozicí instance
     */
//     @Override
    public Pozice getPozice();


    /***************************************************************************
     * Nastaví novou pozici instance.
     *
     * @param pozice   Nastavovaná pozice instance
     */
//     @Override
    public void setPozice(Pozice pozice);

//%A-

    /***************************************************************************
     * Nastaví novou pozici instance.
     *
     * @param x  Nově nastavovaná vodorovná (x-ová) souřadnice instance,
     *           x=0 má levý okraj plátna, souřadnice roste doprava
     * @param y  Nově nastavovaná svislá (y-ová) souřadnice instance,
     *           y=0 má horní okraj plátna, souřadnice roste dolů
     */
//     @Override
    public void setPozice(int x, int y);



//== ZDĚDĚNÉ METODY ============================================================
//== INTERNÍ DATOVÉ TYPY =======================================================
}
